/**
*  Class describing an AMQP confirm frame
*
*  @copyright 2016
*/

/**
*  Include guard
*/
#pragma once

/**
*  Dependencies
*/
#include "methodframe.h"

/**
*  Set up namespace
*/
namespace AMQP {

/**
* Class implementation
*/
class ConfirmFrame : public MethodFrame
{
protected:
	/**
	*  Constructor
	*  @param  channel     The channel ID
	*  @param  size        Payload size
	*/
	ConfirmFrame(uint16_t channel, uint32_t size) : MethodFrame(channel, size) {}

	/**
	*  Constructor based on a received frame
	*  @param  frame
	*/
	ConfirmFrame(ReceivedFrame &frame) : MethodFrame(frame) {}


public:
	/**
	*  Destructor
	*/
	virtual ~ConfirmFrame() {}

	/**
	*  Class id
	*  @return uint16_t
	*/
	virtual uint16_t classID() const override
	{
		return 85;
	}
};

/**
*  end namespace
*/
}